home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 18 / CU Amiga Magazine's Super CD-ROM 18 (1997)(EMAP Images)(GB)[!][issue 1998-01].iso / CUCD / Online / hsc / docs-source / future.hsc < prev    next >
Encoding:
Text File  |  1997-07-03  |  6.6 KB  |  142 lines

  1. <WEBPAGE chapter="hsc - " title="Future Improvements"
  2.     PREV="bugs.html"
  3.     NEXT="related.html"
  4.     QTEXT=("My future is static<BR>"
  5.           +"It's already had it<BR>"
  6.           +"I could tuck you in<BR>"
  7.           +"And we can talk about it")
  8.     QAUTHOR='Sonic Youth, "Schizophrenia"'>
  9.  
  10. Basically, I consider <hsc> finished. However, some people have
  11. convinced me that there are some things that should be implemented
  12. before I release the final version.
  13.  
  14. <H2>Minor Enhancements</H2>
  15.  
  16. <UL>
  17.  
  18. <LI><STRONG>Improve hscpitt</STRONG>: Add a copy/move command.
  19.  
  20. <LI><STRONG>Rename some message classes</STRONG>: message
  21.     classes <qqc>bad style</qqc> and <qqc>fatal error</qqc> will
  22.     probably be renamed to <qqc>flaw</qqc> and <qqc>failure</qqc>,
  23.     so the class name will also consists of only one word. Furthermore,
  24.     <qq>fatal</qq> sounds too hard.
  25.  
  26. <LI><STRONG>Rename internal attributes and filenames</STRONG>:
  27.     currently, internal attributes are named like HSC.XY, and for
  28.     filenames there are no templates at all. I will probably use the
  29.     prefix <qq>hsc</qq> and a <hyphen> as separator, resulting into
  30.     attributes like <CODE>hsc-click-here</CODE> and filenames like
  31.     <FILE>hsc-XXXX.tmp</FILE>.
  32.  
  33. </UL>
  34.  
  35. <H2>Major Enhancements</H2>
  36.  
  37. <UL>
  38. <LI><STRONG>New project database</STRONG>: instead of a single project file,
  39.     <hsc> should store it's data in separate files for every document. A
  40.     document data file is only loaded during parsing if some information about a
  41.     specific document is needed. This should speedup huge projects with more
  42.     than 100 documents.
  43. <LI><STRONG>Additional document data</STRONG>: Without remarkable changes,
  44.     <hsc> could also collect useful information about a document, like
  45.     document title, URIs referenced etc. Of course, some access functions
  46.     will be provided, too.
  47. <LI><STRONG>Index document creation</STRONG>: A new tag <TG>$index</TG> will
  48.     allow the
  49.     user to attach some private information to the document data, which later
  50.     can be retrieved using <hscpitt>. A script the user will have to write
  51.     can use these to create a html-object. Easy to implement for me, awfully
  52.     cryptic and complicated, but rather flexible for the user.
  53. <LI><STRONG>Checking of external URIs</STRONG>: I'm definitely not going to
  54.     mess around with shitty TCP/IP-stuff, but a script program could
  55.     retrieve information about HREFs from the document file, and pass them to
  56.     an external program (like <EXEC>GetURL</EXEC>)
  57. <LI><STRONG>Functions with multiple arguments</STRONG>: Functions like
  58.     <CODE>Exists()</CODE> or <CODE>GetFileSize</CODE> should use the
  59.     same attribute syntax like tags, for example
  60.     <CODE>GetEnv(VAR="HOME")</CODE>.
  61. <LI><STRONG>New copyright</STRONG>: This version probably is the last release
  62.     distributed under GPL. The major lack of the GPL seems to be that I can't
  63.     prevent someone else porting <hsc> to a MS-DOS-based system. But I don't
  64.     think about not including the source or getting incredibly rich.
  65. </UL>
  66.  
  67. <H2>Only If I'm Bored</H2>
  68.  
  69. <UL>
  70. <LI><STRONG>More conditionals</STRONG>: <TG>$select</TG>, <TG>$when</TG> and
  71.     <TG>$otherwise</TG> as an extended version of <TG>$if</TG>
  72. <LI><STRONG>Indention</STRONG>: Add option <CODE>INDENT</CODE> for <TG>$include</TG>
  73.     and <TG>$source</TG> to indent preformatted text
  74. <LI><STRONG>Plausibility checking of external URIs</STRONG>:
  75.     unknown protocol, missing domain etc.
  76. <LI><STRONG>Improve expression parser</STRONG>: the current implementation
  77.     is an embarrassment for a student of computer science, but.. well, it does
  78.     it's job for now.
  79. <LI><STRONG>GUI-Version for AmigaOS</STRONG>: I ought to play around with
  80.     MUI sometimes anyway
  81. <LI><STRONG>Filename compatibility mode</STRONG>: this mostly means that
  82.     a <qqc>..</qqc> should act as parent directory on all systems without
  83.     having to run additional system patches.
  84. </UL>
  85.  
  86. <H2>Things Someone Else Can Do</H2>
  87.  
  88. <UL>
  89. <LI><STRONG>Autoconf-support</STRONG>: In the unix-world, a cryptic tool package
  90.     called autoconf has become quite popular, as it tries to compensate the
  91.     lack that even at the end of the 20th centaury, no one knows in which
  92.     header file to expect <CODE>strftime()</CODE> on this ridiculous system
  93.     (ANSI has specified this in the early 80ies, bye the way). Although I don't
  94.     care much about
  95.     outdated unix-versions, and I don't like unreadable and badly documented
  96.     macro languages, I might include the required changes if someone else
  97.     wastes his time with setting up a working autoconf-installation.
  98. <LI><STRONG>Improve hscdepp</STRONG>: As I do not consider dependency generators
  99.     a reasonable concept, someone else will have to add things like excluding
  100.     specific documents or pattern matching stuff. Hey, it's only about 700 lines of
  101.     code..
  102. <LI><STRONG>Document relation editor</STRONG>: It would be nice, if one could
  103.     edit all those next/prev/up/.. relations with a program, and include these
  104.     into hsc-sources later. It would make sense to store these relations in
  105.     the document data file.
  106. </UL>
  107.  
  108. <H2>No Future</H2>
  109.  
  110. For the thinggies below, from my point of view, there is no need to
  111. ever be implemented. 
  112.  
  113. <UL>
  114. <LI><STRONG>XML-support</STRONG>: It's too ridiculous. If you want to have
  115.     a jolly good laugh, try a html validator on
  116.     <A HREF="http://www.w3.org/pub/WWW/TR/WD-xml-lang-970331.html"><(HSC.Anchor)></A>,
  117.     to get an impression of how competent these people are. After that, read
  118.     <A HREF="http://www.w3.org/pub/WWW/TR/WD-xml-lang.html"><(HSC.Anchor)></A>
  119.     to laugh again... This time I'm really glad if all browser developers will
  120.     ignore it; just another prove that w3c has not produced anything useful after
  121.     html-2.0.
  122. <LI><STRONG>Precompiled include files</STRONG>: This would
  123.     also speed up reading <hsc.prefs>; I experimented around a bit
  124.     with this, and it seems that more time is wasted scanning those
  125.     bloody linked lists then by checking the data. It's more likely
  126.     that some sort of balanced binary tree will make it into 
  127.     the source.
  128. <LI><STRONG>Undefine macros or attributes</STRONG>: I do not
  129.     consider <qq>undefining</qq> a clean concept, but a result of
  130.     mental impotence.
  131. <LI><STRONG>Type checking for attributes</STRONG>: Anything more then the current
  132.     (very relaxed) checking would not fit into the typeless
  133.     concept if plain html.
  134. <LI><STRONG>Move around in text using <TG>$goto</TG> and <TG>$label</TG></STRONG>:
  135.     This one's perverted to the core.
  136. <LI><STRONG>Support other output-formats like texinfo or AmigaGuide</STRONG>: There
  137.     are converters around for this task, and several people smarter than me
  138.     have already failed to introduce the ultimate hypertext authoring tool.
  139. </UL>
  140.  
  141. </WEBPAGE>
  142.